﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Com.Oxilly.Qsb.Core.SDK.Events
{
    public enum EngineStates
    {
        /// <summary>
        /// The eninge is yust created, nothing really happend
        /// </summary>
        Init,
        /// <summary>
        /// The engine is starting. Resources are being allocated.
        /// </summary>
        Starting,
        /// <summary>
        /// The engine has been started. All resources where allocated.
        /// </summary>
        Started,
        /// <summary>
        /// The engine is connecting to the QBus controler(s), and external resources if any. 
        /// </summary>
        Connecting,
        /// <summary>
        /// The eninge is connected to the QBus controler(s), and external resources.
        /// </summary>
        Connected,
        /// <summary>
        /// The engine is receiving initial data from the QBus controler and external resources.
        /// </summary>
        Loading,
        /// <summary>
        /// The engine has receives initial data from the QBus controller and exteral resources.
        /// </summary>
        Loaded,
        /// <summary>
        /// The engine is running and ready to receive commands.
        /// </summary>
        Running,
        /// <summary>
        /// The engine is shutting down, disconection from the QBus controler and external resources 
        /// </summary>
        Stopping,
        /// <summary>
        /// The engine is completly stopped. 
        /// </summary>
        Stopped,
        /// <summary>
        /// Some error has occured. The engine is trying to reasablishe all external connections. The engine still can exept 
        /// command, but they are delayed until the engine is running again.
        /// </summary>
        Disconected,
    }

}
